Crystal oscillator calibration

ABSTRACT

Systems and methods for temperature-calibration of an uncompensated XO in a mobile device during mobile device operation. The XO is temperature-calibrated based on assistance from wireless signals, such as from satellite source, and optionally from terrestrial sources such as WWAN, CDMA, etc. Based on one or more received wireless signals received at a receiver, corresponding frequency estimates of the XO are obtained and correlated with corresponding operating temperatures in a processor. Based on one or more samples of frequency estimates and associated temperatures, the XO is temperature-calibrated in the processor wherein a frequency-temperature (FT) model is formulated for the XO. The frequency of the temperature-calibrated XO can be determined from the FT model at any given temperature.

CLAIM OF PRIORITY UNDER 35 U.S.C. §119

The present application for patent claims the benefit of U.S.Provisional Application No. 61/666,307, entitled “GNSS BASED CRYSTALOSCILLATOR CALIBRATION” filed Jun. 29, 2012, assigned to the assigneehereof, and expressly incorporated herein by reference.

FIELD OF DISCLOSURE

Disclosed embodiments are directed to field calibration of an XO, andmore particularly, for temperature-calibration of an uncompensated XOusing assistance from one or more wireless signals of known frequency,including satellite signals, and optionally, terrestrial signals. Theuncompensated XO does not comprise built-in compensation for frequencyvariation with variation in temperature or voltage.

BACKGROUND

Global navigation satellite systems (GNSS) are well known inapplications related to tracking and positioning. GNSS systems such asglobal positioning systems (GPS) are satellite-based systems used forpinpointing a precise location of a GNSS receiver or object capable oftracking satellite signals. With advances in GNSS technology, it ispossible to locate and track movements of an object on the globe.

GNSS systems operate by configuring a GNSS satellite to transmit certainsignals which may include pre-established codes. These signals are basedon a GNSS time or satellite time derived from an atomic clock orsatellite clock present in the satellite. The transmitted signals mayinclude a time stamp indicating the time at which they were transmitted.A GNSS receiver, which may be integrated in a handheld device, is timedby a local clock located at the receiver end. Ideally, this local clockis synchronized to the satellite clock (also known as the GNSS time).The device comprising the GNSS receiver is configured to estimate theGNSS time based on the satellite signals in order to synchronize theirlocal clocks to the GNSS time. Once the local clocks are accuratelysynchronized, the device is configured to calculate the propagation timefor the satellite signals to reach the receiver, based on a differencebetween the time at which the signals were received, and the time atwhich they were transmitted. This propagation time is an indication ofthe distance between the satellite and the device, keeping in mind thatfactors such as atmospheric conditions may affect the propagation time.

In order to pinpoint the location of the device, the device performs theabove process to calculate the distance to two or more other satellites(if altitude and/or local time of the device is known, the location canbe determined with a total of three satellites, otherwise, a total offour satellites may be needed). Using the distances to the satellites,it is theoretically possible to “trilaterate” the position of thedevice. However, practical applications diverge from theoreticalexpectations due to several sources of inaccuracies inherent in GNSSbased positioning.

One source of inaccuracy relates to synchronization of the local clock.In modern devices comprising GNSS receivers, time is typicallymaintained via a temperature-compensated crystal oscillator (TCXO), tomaintain the frequency stability required for GNSS operation acrossvarying device temperatures. Even small errors in frequency may resultin large positional errors in position estimation. Thus, the TCXO and/ora voltage controlled temperature compensated crystal oscillator (VCTCXO)have been used in the art to maintain nearly constant frequency acrossfluctuating temperature and voltage. While the TCXO and VCTCXO may alsoexperience some fluctuation in frequency with fluctuations intemperature and voltage, the frequency variations in an XO, i.e., acrystal oscillator without such temperature or voltage compensation, ismuch larger. Accordingly, the XO has historically not been used becauseof the large frequency variations across temperature and voltage thatmay prolong GNSS searches or cause them to fail.

SUMMARY

Exemplary embodiments of the invention are directed to systems andmethods for calibration of an XO, and more particularly, fortemperature-calibration of an uncompensated XO, in order to overcomefrequency variation of the XO. In several exemplary aspects,temperature-calibration of the XO includes determining an accuraterelationship between frequency and temperature of the XO usingassistance from one or more signal sources.

For example, an exemplary embodiment is directed to a method oftemperature-calibrating an uncompensated crystal oscillator (XO), in amobile device during mobile device operation, the method comprising:receiving a first set of wireless signals comprising at least a firstwireless signal of known frequency, at a first temperature, estimating afirst frequency of the XO at the first temperature, based on at leastthe first wireless signal, and temperature-calibrating the XO based onthe first frequency and the first temperature.

Another exemplary embodiment is directed to a method oftemperature-calibrating an uncompensated crystal oscillator (XO) in amobile device during mobile device operation, the method comprising:receiving a first set of wireless signals comprising at least a firstwireless signal, from a signal source of known frequency and knownDoppler, at a first temperature, wherein a plurality of satellitesignals is unavailable, estimating a first frequency of the XO at thefirst temperature, based on at least the first wireless signal, andtemperature-calibrating the XO based on the first frequency and thefirst temperature.

Another exemplary embodiment is directed to a system comprising: amobile device comprising an uncompensated crystal oscillator (XO), meansfor receiving a first set of wireless signals comprising at least afirst wireless signal of known frequency, at a first temperature, meansfor estimating a first frequency of the XO at the first temperature,based on at least the first wireless signal, and means fortemperature-calibrating the XO based on the first frequency and thefirst temperature during operation of the mobile device.

Another exemplary embodiment is directed to a system comprising: amobile device comprising an uncompensated crystal oscillator (XO), meansfor receiving a first set of wireless signals comprising at least afirst wireless signal, from a signal source of known frequency and knownDoppler, at a first temperature, wherein a plurality of satellitesignals is unavailable, means for estimating a first frequency of the XOat the first temperature, based on at least the first wireless signal,and means for temperature-calibrating the XO based on the firstfrequency and the first temperature during operation of the mobiledevice.

Another exemplary embodiment is directed to a mobile device comprising:an uncompensated crystal oscillator (XO), a temperature sensorconfigured to provide a first temperature, one or more receiversconfigured to receive a first set of wireless signals comprising atleast a first wireless signal of known frequency, at the firsttemperature, and a processor configured to estimate a first frequency ofthe XO at the first temperature, based on at least the first wirelesssignal, and temperature-calibrate the XO based on the first frequencyand the first temperature during operation of the mobile device.

Another exemplary embodiment is directed to a mobile device comprising:an uncompensated crystal oscillator (XO), a temperature configured toprovide a first temperature, one or more receivers configured to receivea first set of wireless signals comprising at least a first wirelesssignal, from a signal source of known frequency and known Doppler, atthe first temperature, wherein a plurality of satellite signals isunavailable, and a processor configured to estimate a first frequency ofthe XO at the first temperature, based on at least the first wirelesssignal and temperature-calibrate the XO based on the first frequency andthe first temperature.

Yet another exemplary embodiment is directed to a mobile devicecomprising: an uncompensated crystal oscillator (XO), a temperaturesensor configured to provide a first temperature, one or more receiversconfigured to receive a first set of wireless signals comprising atleast a first wireless signal of known frequency, at a firsttemperature, a processor, and a non-transitory computer-readable storagemedium comprising code, which, when executed by the processor, causesthe processor to perform operations for temperature-calibrating acrystal oscillator (XO), the non-transitory computer-readable storagemedium comprising: code for estimating a first frequency of the XO atthe first temperature, based on at least the first wireless signal, codefor determining unknown coefficients of a polynomial equation comprisinga relationship between frequency of the XO and temperature based on atleast the first frequency and the first temperature.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings are presented to aid in the description ofembodiments of the invention and are provided solely for illustration ofthe embodiments and not limitation thereof.

FIG. 1 is a graphical illustration of XO frequency as a function oftemperature.

FIGS. 2A-B illustrate exemplary devices configured for XOtemperature-calibration based on received wireless signals according toexemplary embodiments.

FIGS. 3A-C depict flow chart illustrations of exemplary methods oftemperature-calibrating an XO based on one or more sets of receivedwireless signals.

FIG. 4 illustrates an exemplary wireless device configured for XOtemperature-calibration based on received wireless signals according toexemplary embodiments.

DETAILED DESCRIPTION

Aspects of the invention are disclosed in the following description andrelated drawings directed to specific embodiments of the invention.Alternate embodiments may be devised without departing from the scope ofthe invention. Additionally, well-known elements of the invention maynot be described in detail or may be omitted so as to not obscure therelevant details of the invention.

The word “exemplary” is used herein to mean “serving as an example,instance, or illustration.” Any embodiment described herein as“exemplary” is not necessarily to be construed as preferred oradvantageous over other embodiments. Likewise, the term “embodiments ofthe invention” does not require that all embodiments of the inventioninclude the discussed feature, advantage or mode of operation.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of embodiments ofthe invention. As used herein, the singular forms “a”, “an” and “the”are intended to include the plural forms as well, unless the contextclearly indicates otherwise. It will be further understood that theterms “comprises”, “comprising,”, “includes” and/or “including”, whenused herein, specify the presence of stated features, integers, steps,operations, elements, and/or components, but do not preclude thepresence or addition of one or more other features, integers, steps,operations, elements, components, and/or groups thereof.

Further, many embodiments are described in terms of sequences of actionsto be performed by, for example, elements of a computing device. It willbe recognized that various actions described herein can be performed byspecific circuits (e.g., application specific integrated circuits(ASICs)), by program instructions being executed by one or moreprocessors, or by a combination of both. Additionally, these sequence ofactions described herein can be considered to be embodied entirelywithin any form of computer readable storage medium having storedtherein a corresponding set of computer instructions that upon executionwould cause an associated processor to perform the functionalitydescribed herein. Thus, the various aspects of the invention may beembodied in a number of different forms, all of which have beencontemplated to be within the scope of the claimed subject matter. Inaddition, for each of the embodiments described herein, thecorresponding form of any such embodiments may be described herein as,for example, “logic configured to” perform the described action.

Embodiments described herein may generally pertain to a crystaloscillator (XO) in a device configured for GNSS or GPS applications.More particularly, an exemplary XO is “uncompensated,” which refersherein to an XO which lacks built-in temperature or voltage compensation(or in other words, an XO which comprises a lack of built-incompensation) to account for frequency variation, in contrast to theaforementioned TCXO and VCTCXO, which have temperature and/or voltagecompensation on the TCXO and/or VCTCXO device. The description ofembodiments may simply make reference to an XO, and it will beunderstood hereinafter that such a reference will pertain to anuncompensated XO, unless otherwise specified. Therefore, exemplaryembodiments may be configured to overcome the problem associated withlarge frequency variation in the XO by calibrating the XO. As usedherein, the term “calibration,” or more specifically,“temperature-calibration,” pertains to a relationship between frequencyand temperature (also known as a “frequency-temperature relationship” or“FT relationship” or “FT model” or “FT curve”) of the XO, formulated toa high degree of accuracy, whereby the frequency of the XO can bedetermined from the formulated relationship at any given temperature.While in some cases, the more general term, “calibration,” may be used,it will be understood that “calibration” refers to“temperature-calibration” as it pertains to the exemplary embodiments,wherein temperature-calibration generally means determination of an FTrelationship or FT model for the XO.

Moreover, temperature-calibration of the XO in exemplary embodiments mayalso be distinguished from precalibration of the XO during manufactureor in factory settings. Precalibration, factory-based calibration, orhereinafter, “factory-calibration,” as used herein, pertains tocalibration of the XO in factory settings before it is placed in thefield or under operational conditions. Factory-calibration is limited tothe frequency offset at nominal temperature. Calibrating each XO acrossa broad range of temperatures in the factory is time and costprohibitive. Therefore, factory-calibration is generally insufficientfor reliable operation of the device during operation or in fieldconditions. Therefore, embodiments are directed to field-calibration, ormore specifically, temperature-calibration in the field, of the XO,which pertains to temperature-calibrating the XO during operation of thedevice comprising the XO, after the device has left the factory, isintegrated into a mobile device, and is put in use, for example, by theend user of the mobile device. Accordingly, it will be understood thatthe term “calibration” as used herein, refers to field-calibration, andmore specifically, temperature-calibration in the field, duringoperation of the device, and excludes any precalibration that may existin the XO.

With the above definitions in mind, exemplary embodiments are directedto temperature-calibration (i.e., temperature-calibration in the field)of the XO using one or more wireless signals of known frequency. Asdescribed herein, “wireless signals” (or sometimes, more generally,signals received by an exemplary receiver, or “received signals”)include satellite signals from satellite sources such as GNSS.Additionally, and optionally, in some aspects, wireless signals may alsoinclude terrestrial signals from terrestrial sources (or moreparticularly, “calibrated terrestrial sources” which have knownfrequency with negligible frequency variation) such as, some wirelesswide area networks (WWAN) such as code division multiple access (CDMA),and some long term evolution (LTE) networks. In general, when comparedto terrestrial signals, temperature-calibration performed usingsatellite signals may have beneficial aspects based on relativeimperviousness to user motion. In more detail, when the device is inmotion, for example, transported by a user on a freeway, largevariations in “Doppler,” or shift in frequency, are introduced interrestrial signals, say when the device approaches or moves away from abase station. On the other hand, the impact of user motion issignificantly smaller on the Doppler of satellite signals, due to thelarge distances between the device and the satellites, as well as, thespeed of motion of the satellites when compared to the distancestraversed by the device and the velocity of the device. Therefore,temperature-calibration can be performed using satellite signals, evenwhen the device is in motion. Moreover, due to the above beneficialaspects of satellite signals, a smaller temperature range (e.g., withina variation of 2.5° C.), at which frequencies are sampled, may besufficient to temperature-calibrate the XO. However, it is possible toaugment, or replace, satellite signal based temperature-calibration ofan exemplary XO with terrestrial signals, in scenarios where terrestrialsignals are available and temperature-calibration based on theterrestrial signals is feasible. In general, a common aspect of thewireless signals—both satellite signals and terrestrial signals—is thatthese wireless signals have known frequency. As used herein, “knownfrequency” of a wireless signal, particularly in the case of satellitesignals, is intended to mean that frequency of the wireless signal ispredetermined or determinable, from additional information (referred toherein as “GNSS assistance information”), such as, but not limited to,GNSS Ephemeris and/or Almanac or velocity of the device. As one ofordinary skill in the art would recognize, Almanac provides a courseposition and time and Ephemeris provides a fine position and time foreach satellite. If Ephemeris is available, Almanac may not be necessary.On the other hand, if only Almanac is available, Doppler may beestimated with the Almanac information in some cases. Each satellitebroadcasts its own Ephemeris (for that satellite only) and Almanac forall of the satellites. Location servers typically have Ephemeris for allvisible satellites and Almanac available for download.

For calibrated terrestrial sources, the known frequency can be obtainedin a more straightforward manner, for example, based on the WWAN or CDMAtransmission frequency. However, it will be understood that one or moreof the wireless signals of known frequency may have an associated“Doppler” or shift from the known frequency, based on factors such as,speed or relative speed of the signal source. This Doppler wouldoptimally be accounted for, for example, by taking multiple samplesacross a longer period of time, in order to determine whether there is avariation in velocity, and by determining a nominal frequency. As seenfrom the above, in some cases, the Doppler of a wireless signal of knownfrequency can be constant and of a known value. However, in some othercases, the Doppler may vary. The variation in Doppler sometimes may beknown or determinable, however, in some cases, the Doppler variation maynot be known and further, may not be easily determinable or predictable.The wireless signals of known frequency (or hereinafter, simply,“wireless signals”) may be used to derive frequency estimates of the XOat the device. If the Doppler of the one or more wireless signals usedin obtaining the frequency estimates is unknown, then a plurality ofwireless signals may be used to determine and offset the Doppler values.On the other hand, a known Doppler source (e.g., a Doppler-true or zeroDoppler source, such as a geostationary source) can also be used in thetemperature-calibration process where a single known Doppler sourcewould suffice (wherein a plurality would not be needed for offsettingthe Doppler in calculations of frequency estimates). In either case,frequency estimates are obtained at various operating temperatures andassociated with the operating temperatures to form sample pointscomprising frequency estimates and operating temperatures. Based on theimplementation, the number of such sample points required totemperature-calibrate the XO or form the FT model may vary.

In exemplary embodiments, signals from one or more satellites sourcesare used to derive a frequency estimate at a given operatingtemperature. The minimum number of satellite sources required to obtainthe frequency estimate of the XO may be dependent on various scenarios.In general, three satellites may be sufficient to obtain the location orposition of the device with an assumed altitude. With a fourthsatellite, the altitude of the device can also be solved for. In somecases, location can also be obtained through other means, such as, via acell sector center or the location of a terrestrial transmitter. Inthese cases, one satellite signal and known Ephemeris, or a terrestrialtransmission of known and reliable frequency, may suffice for obtainingthe frequency estimate of the XO. Note that in embodiments which onlyutilize terrestrial wireless signals of known frequency, Ephemeris,time, and location are not required. In cases where only satellite orGNSS signals are relied upon, the GNSS location fix or position fix canprovide a location that may be used, along with GNSS Ephemerisinformation, to determine the frequency of the XO. Obtaining a positionfix for the device can essentially compensate for the Doppler of thevarious received satellite signals, due to the motion of the GNSSsatellites, and therefore, the actual frequency of the receivedsatellite signals can be known. The actual frequency can be correlatedto the frequency of the XO, and correspondingly the variation in thefrequency of the XO from an expected nominal XO frequency can becalculated and associated with the temperature at which the aboveoperation is performed. In some cases, if the altitude of the device isknown, then satellite signals from three satellite sources aresufficient to obtain the fix, and therefore for estimating frequency andtemperature-calibration of the XO. Similarly, knowing an approximatelocation of the device can also bring down the minimum number ofsatellites required for temperature-calibration. An approximate locationmay be obtained through various means. In one example, relying onterrestrial sources, a cell sector center for a serving cell can be usedto obtain an approximate location. If Ephemeris and Almanac are known,they may be used, in conjunction with the location of the mobile device,to determine the Doppler shift for at least one satellite signal and,consequently, the actual frequency of the received signal may bedetermined to estimate the frequency of the XO. Thus, the minimum numberof signal sources may vary for different embodiments, but once thedevice has searched for, and locked on to the minimum number of signalsources based on particular situations and criteria, wireless signal(s)can be received from these signal sources, and frequency estimates forthe XO can be derived from the received wireless signals.

In some embodiments temperature-calibration of the XO can be based onwireless signals received from at most one signal source. Theseembodiments may pertain to situations wherein a minimum plurality ofsatellite sources (e.g., three or four, depending on the scenariosdescribed previously) required for a GNSS fix and/or terrestrial sourceswhich can provide a GNSS fix are unavailable and/or situations whereinpower levels of GNSS signals is low, requiring a longer, more timeconsuming search. As used herein, the term “unavailable,” as it pertainsto signal sources, refers to lack of availability of signals from thesignal source at the device comprising the XO. For example, a signalsource may be unavailable with respect to the device when it is not inthe line of sight or plain view of the device, when signals from thesignal source are prevented from reaching the device due to any reason,such as distance or obstructions, or when the device cannot easilyreceive signals from the signal source for any reason, including lack ofcapability for reception (e.g., the device may not be configured forWWAN and thus not be capable of receiving signals from a calibratedterrestrial source such as WWAN), or where the amount of time or powerrequired to receive the signals is prohibitively high. Accordingly, fortemperature-calibrating the XO according to these embodiments, thedevice may first search for signal sources and determine whether aminimum number of satellite sources and/or calibrated terrestrialsources for obtaining a GNSS fix are available (keeping in mind that insome aspects a specific search may not be required, as the device can beconfigured to rely on information, obtained for example, from a user, orother configuration information, in order to determine or assume that aminimum number of satellite sources and/or calibrated terrestrialsources for obtaining a GNSS fix are unavailable). Thereafter, thedevice may nevertheless be configured to temperature-calibrate the XObased on assistance from a single or at most one signal source when theat most one signal source has a “known Doppler.” As used herein, theterm “known Doppler” can refer to a signal source whose Doppler is knownor can be precisely determined. In one example, the known Doppler can bezero. A zero Doppler source is also known as a Doppler-true orDoppler-accurate source. Doppler-true sources can be geo-stationary,which guarantees that their Doppler is 0 Hz at all times. Doppler-truesources can also include stationary terrestrial sources. A satellitebased augmentation system (SBAS) is an example of a Doppler-true sourcewhich can be utilized in this embodiment. Another example of a knownDoppler is a non-zero Doppler source, such as a GNSS satellite vehiclewhose position and velocity are known (e.g., based on SatelliteEphemeris and/or Almanac), which may be utilized in these embodimentswhen at least a coarse location of the device is known, and further atleast a coarse time at the device is known. When feasible (e.g., when aSBAS vehicle or other stationary signal source of known frequency isavailable), the temperature-calibration of the XO based on a singleknown Doppler source can beneficially reduce search time and computationtime associated with the XO temperature-calibration in theseembodiments. In the case where the single known Doppler signal source isa satellite source (e.g., SBAS vehicle), the device may obtain aposition estimate for the device from a positioning determining entity(PDE) (e.g. as known in the art for CDMA systems), or more generally, apositioning server or location server, which covers other airinterfaces. The position estimate or location of the device can also beobtained from an approximate location derived from terrestrial signals(e.g. using cell sector center of the serving cell or trilateratingterrestrial signals, wherein looking up the cell sector location can bedone using a positioning server or on device 100 if it has a basestation Almanac), location derived from a positioning server or apositioning determining entity (PDE) or a location server Once thelocation is known, using Ephemeris and time, the received wirelesssignal can be used to determine an effective frequency of the satelliteconstellation. This effective frequency derived from the receivedwireless signal can be compared with the frequency of the localoscillator, in order to obtain the frequency estimate for the XO. Incases where the known Doppler signal source is not a satellite source(e.g., if the signal source is a calibrated terrestrial source such asWWAN or other fixed frequency source of known frequency), and if thedevice is stationary, then the known fixed frequency is treated as theeffective frequency which is compared with the frequency of the localoscillator in order to obtain the frequency estimate for the XO.

A detailed description of the configuration and operation of devicesaccording to the above exemplary embodiments will now be provided withreference to the figures.

With reference to FIG. 1, the formulation of the frequency-temperature(FT) relationship (also known as, FT curve or FT model) for the XO willbe discussed in detail. More particularly, the formulation of the FTmodel pertains to field calibration of the XO, e.g., during mobiledevice operation related to GNSS-based positioning applications of anexemplary mobile device. The FT model can be expressed as a polynomialequation or function, wherein frequency is expressed as an n^(th) degreepolynomial function of temperature. At least some of the parameters orcoefficients of this polynomial equation are unknown quantities for anXO and accordingly, an objective of the XO temperature-calibration cancomprise determining or refining the coefficients of the FT model forthe XO. In general, the number of coefficients will vary proportionallywith the value of “n” or the degree of the polynomial. However, inexemplary embodiments, certain constraints can be imposed to makereasonable assumptions regarding the value of one or more coefficients,such that the number of coefficients that are unknown, and need to bedetermined, may be reduced. The unknown coefficients are determinedusing the aforementioned samples of frequency estimates of the XO atassociated temperatures. The number of samples required for thetemperature-calibration of the XO will vary based on the number ofcoefficients that need to be determined. Accordingly, by reducing thenumber of unknown coefficients, the temperature-calibration of the XOcan be performed with fewer samples, which correspondingly leads toadvantages in terms of increased speed and efficiency of thetemperature-calibration process.

In FIG. 1, FT curves FT1 and FT2 are based on a third degree (i.e., n=3)polynomial equation for exemplary XOs. Each of these FT curves can berepresented by the third order polynomial equation:ƒ(T)=c₃(T−T₀)³+c₂(T−T₀)²+c₁(T−T₀)¹+c₀, where ƒ(T) is the function offrequency ƒ of the XO with variation in temperature T, T₀ is a constant,typically, room temperature (e.g., 30° C.), and c₀-c₃ are the parametersor coefficients to be determined to temperature-calibrate the XO. Theelements c₀-c₃ are the parameters of the polynomial equation, which areto be determined in an exemplary process. Once the coefficients aredetermined with a high degree of precision, FT curves such as FT1/FT2can be plotted, and frequency of the corresponding XO can be read ordetermined from the FT curve for any given temperature. While thediscussion herein will pertain to third degree polynomial equations forexemplary FT curves, it will be understood that the embodiments may beeasily extended to polynomial equations of any degree (e.g., n=4, 5,etc.), or for that matter, any mathematical expression or function ofany order or degree for representing the FT model for exemplary XOtemperature-calibration, without departing from the scope of thisdisclosure.

In some embodiments, the device comprising the XO can be configured toreceive wireless signals from one or more satellite sources andadditionally, in some cases, from one or more calibrated terrestrialsources. Based on these received wireless signals, a GNSS location canbe obtained, if needed, and a frequency error in the XO can be computed,based upon at least one frequency reference. Using the nominal/expectedfrequency of operation of the XO and the computed frequency error in theXO, a frequency estimate, say a first frequency estimate, of the XO canbe obtained. A reading of the temperature, say a first temperature, ofthe device is also obtained at the time when the frequency estimate isobtained, and a first sample comprising the first frequency estimate andthe first temperature is formed. This process is repeated at a second,different temperature to obtain second sample comprising a secondfrequency estimate and a second temperature. In some cases, as low astwo samples may be sufficient, based on certain constraints andassumptions pertaining to the coefficients c₀-c₃. In other cases, theprocess is repeated at other different temperatures to determineadditional corresponding frequency estimates to refine the coefficientestimates.

In an illustrative example, the coefficients may be determined based oncertain specifications related to the XO, which may be available, forexample from a vendor or manufacturer of the XO. The coefficients mayalso be determined based on knowledge of operating conditions andexpected range of variation in temperature of the device. It will beunderstood that the below discussion pertaining to determination ofcoefficients for the FT model of an exemplary XO are only illustrative,and they may be based on specific implementations and operatingconditions. Accordingly, in one implementation, the coefficient c₀ maybe a constant, and can be assumed to be of value zero (or precalibratedat a nominal temperature during manufacturing with a non-zero constantor known value), which reduces the number of unknown coefficients tothree, i.e., c₁-c₃. This constant c₀ may be referred to as a DC offsetin the art. In yet another optional implementation, the temperaturevariation of T from T₀ may be known in advance or may be constrained tobe very small, and therefore, the contribution of the third order term,i.e., c₃(T−T₀)³, to the polynomial function of ƒ(T), may be negligible,and therefore c₃ may be assumed to be zero. This could reduce the numberof unknown coefficients to two, i.e., c₁ and c₂. Obtaining two samplepoints comprising first and second frequency estimates at correspondingfirst and second temperatures would then be sufficient to determine c₁and c₂ and thus temperature-calibrate the XO.

Some specifications for the XO may also define the maximum range ofacceptable error in the coefficients for the XO, which may determine thenumber of samples needed to obtain the coefficients to the specifieddegree of error. For example, acceptable error in c₀ may be specified tofall within the range of ±2 parts per million (ppm), and thereforesetting c₀ to “0,” as described above would satisfy this requirement.The contribution of the term c₁(T−T₀/to the polynomial function ƒ(T) maybe significant in many cases, and therefore c₁ may need to be determinedto a high degree of accuracy, or in other words, finelytemperature-calibrated in the field. Some specifications may limit theerror in c₁ to fall in the range of, −0.10 ppm/° C. to −0.40 ppm/° C.,for example. Some embodiments herein can achieve c₁ to within −0.10ppm/° C. based on exemplary techniques to satisfy such stringentrequirements. As previously discussed, a higher tolerance may beacceptable for error in the coefficient c₃ and sometimes, factoryprecalibration of c₃ may be sufficient. Some specifications may requireerror in c₃ to fall within a relatively relaxed range of 8.5e-5 ppm/° C.to 11.5e-5 ppm/t, and therefore, using factory precalibration values oreven assuming c₃ to be zero may satisfy the error requirements in thespecification.

In the illustrations of FIG. 1, for FT curve FT1, the coefficients are,c₁=−0.1 and c₃=11.5e-5, and for FT curve FT2, c₁=−0.4 and c₃=8.5e-5. Inthese examples, it can be seen that the total range of XO frequency,with an uncertainty in c₀ contained within an upper limit of 2 ppm/° C.,can be up to ±20 ppm for a temperature variation between 30° C. and 90°C. Viewing FT1 and FT2, it can be observed that as this temperaturerange is widened, for example, between −40° C. and 100° C., theuncertainty in XO frequency can be as high as ±34 ppm. Accordingly, someembodiments are configured to temperature-calibrate the XO by choosingthe constraints and assumptions based on operating conditions such asthe temperature range pertaining to the device operation.

With reference now to FIG. 2A, a simplified schematic of an exemplarydevice 100 configured for XO field calibration according to exemplaryembodiments is illustrated. It will be noted that device 100 may be amobile device or handheld device and may further comprise one or morecomponents as known to one skilled in the art, but which are notillustrated in FIG. 2A for the sake of clarity (although FIGS. 2B and 4provide other exemplary embodiments directed to devices similar todevice 100, which illustrate certain other components which may beincluded in the exemplary devices). Device 100 may comprise receiver102, which may be configured to receive wireless signals from varioussources such as, one or more signal sources 110 a-n. In one non-limitingexample, one or more of signal sources 110 a-n may be satellite or GNSSsources capable of providing GNSS fixes. Additionally and optionally,one or more signal sources 110 a-n may also be calibrated terrestrialsources, such as WWAN or CDMA, which can augment thetemperature-calibration process, although it will be recalled that suchfeatures pertaining to calibrated terrestrial sources are purelyoptional and not required in the various embodiments. As describedfurther in later sections, one of the signal sources 110 a-n can also bea stationary satellite signal source such as an SBAS satellite, whereintemperature-calibration can be performed using a single SBAS satellite.Receiver 102 may be driven by clock 104 which can be sourced from XO106. Temperature sensor 114 may be included in device 100 to sensetemperature of XO 106 and provide XO manager 108 with operatingtemperature associated with XO 106. Temperature sensor 114 may be adiscrete block on device 100 as illustrated, or in some embodiments, athermistor, such as temperature sensor 114, may be integrated into oneof the other blocks. Moreover, while temperature sensor 114 may beconfigured to measure temperature directly at XO 106 in someembodiments, it is also possible to configure a similar device/sensor torepresentatively measure or sense the required temperature on a printedcircuit (PC) board or at a pin or lead external to an integrated circuiton which device 100 is integrated. XO manager 108 may be configured toobtain frequency estimates for XO 106 based on signals received byreceiver 102. XO manager 108 may be further configured to associateoperating temperatures provided by temperature sensor 114, and performoperations related to temperature-calibration of XO 106 according to theabove-described techniques. While XO manager 108 is designated as aseparate block in this illustration, the functionality and logicassociated with XO manager 108 may be integrated in any processor, suchas a digital signal processor or a general purpose processor, in device100.

In FIG. 2A, one local oscillator, local oscillator 112, is illustratedas included in receiver 102. However, it will be understood that in thevarious embodiments described herein, one or more other localoscillators may be present in one or more other blocks. For example (aswill be further described with reference to FIG. 4), an exemplary mobiledevice may comprise one or more receivers or transceivers configured forreception of satellite signals and one or more receivers or transceiversconfigured for other wireless signals such as WWAN signals. Accordingly,in some embodiments, each of those receivers and/or transceivers mayhave one or more local oscillators. However, exemplary techniquesdescribed below with reference generally to local oscillator 112, can beeasily extended to any other local oscillator which may be present inthe device, based on the source of the particular wireless signal underconsideration.

In one exemplary embodiment, receiver 102, along with one or morecomponents not specifically illustrated in device 100, may search for aminimum number of wireless signal sources 110 a-n to obtain a GNSS fix(keeping in mind, that in some embodiments, for example, device 400 ofFIG. 4, separate receivers/transceivers and accompanying localoscillators may be configured for different types of wireless signals,such as satellite signals and WWAN signals). As previously explained,this minimum number of wireless signal sources 110 a-n may be as low asone (e.g., when the Doppler of the signal source is known, such as inthe case of an SBAS satellite), or may be three or four, depending onwhether additional information, such as Ephemeris, Almanac, position ofdevice 100, time at device 100, etc. are known. If the required minimumnumber of signal sources 110 a-n is found, then device 100 locks on tothese signal sources 110 a-n to receive wireless signals from themthrough receiver 102. A position fix or GNSS fix is obtained using thesereceived wireless signals, for example, at XO manager 108. The GNSS fixmay provide information such as the location of device 100 and afrequency error of local oscillator 112. Using the GNSS fix, a frequencyerror of XO 106 can be calculated, using which, a first frequency of theXO can be estimated.

In one example, a first set of wireless signals comprising at least,three wireless signals, say, a first, second, and a third wirelesssignal, may be received by receiver 102, at an associated firsttemperature. The first, second, and third wireless signals may be from afirst, second, and a third satellite respectively, such that a positionfix or GNSS fix for device 100 may be obtained from at least the threewireless signals (e.g., by a process of trilateration). It will berecalled that wireless signals from three satellites may be sufficientto calculate location of the device comprising the XO if altitude of thedevice is known, but if altitude is unknown, then wireless signals fromat least four satellites may be needed. Determining the location canalso be based on additional information or GNSS assistance which may bederived from signal sources, such as calibrated terrestrial sources(e.g., WWAN, CDMA, etc.). Once location is determined based on thewireless signals, using Ephemeris and time, the frequency of thewireless signals can be determined. Using a received wireless signal(s),the Doppler(s) of the wireless signals may be determined, allowing thefrequency of the received wireless signal to be determined, which thenallows deriving an effective frequency of zero Doppler (from astationary source) or known Doppler (from a moving source or sourcemoving relative to the receiver) from the wireless signal(s).

The Doppler of the wireless signals received from a satellite source canbe determined through the use of Ephemeris or Almanac information and aknown location, such as the location determined through a GNSS fix or aterrestrial estimate (such as the location of a visible terrestrialtransceiver). Ephemeris information, when used in conjunction with aknown location of the device can be used to predict the location,velocity, and heading of a GNSS satellite relative to the device andthus calculate the Doppler shift. Once the Doppler shift is known, theimpact of the Doppler shift can be removed from the received signalfrequency to determine the effective frequency of the wireless signal.If multiple wireless signals are used to determine a reference frequencyat a given temperature (such as the nominal GNSS frequency, theeffective frequency of the satellite constellation, or the frequencyoffset at that temperature), multiple frequency estimates derived fromthe multiple wireless signals may be combined into a single frequencyestimate which can be utilized as the derived effective frequency. IfEphemeris and location are known, wireless signals received from asingle satellite can be used to derive the effective frequency of thesatellite signal. Note that the satellites in a given GNSS constellationgenerally broadcast at the same effective frequencies. Similarly, asingle terrestrial wireless signal of known frequency can be used toderive the effective frequency of the terrestrial signal source.Effective frequency can also be derived from multiple wireless signalswhen Ephemeris for each GNSS satellite and location of the mobile deviceare known. The effective frequencies, as derived from the multiplewireless signals, can be combined in several ways to obtain a “derivedeffective frequency,” which can be based on the effective frequencyderived from one or more of the multiple wireless signals. For example,a first effective frequency can be derived from a first wireless signal,a second effective frequency from a second wireless signal, and a thirdeffective frequency from a third wireless signal, wherein the derivedeffective frequency can be based on one or more of the first, second,and third effective frequencies. However, it will be kept in mind thatwhile sometimes it may be possible to derive an effective frequency(e.g. first, second, and third effective frequencies) from each of thereceived wireless signals, in some cases the effective frequency may beobtained from fewer than all of the received wireless signals (e.g.,only one wireless signal in some cases). In some embodiments, multiplesatellite signals may be required to determine an initial location. Inother embodiments, location can be determined via a previously savedlocation, or via terrestrial wireless signals, such as by utilizing acell sector center derived either locally on the device or on a locationserver by looking up the serving cell in a base station Almanac, or bytrilaterating a position based on terrestrial signals. In any case, inembodiments utilizing GNSS signals, once a location is determined, notall of the wireless signals may be required for the purposes ofestimating the frequency of the XO at a given temperature. Inembodiments utilizing terrestrial signals, only one wireless signal issufficient for estimating the frequency of the XO at a giventemperature. For example, in one embodiment, once the location isdetermined, the effective frequency (e.g. first effective frequency) maybe derived from the strongest signal and may be used as the derivedeffective frequency based on all of the received wireless signals. Inanother embodiment, frequencies (or effective frequencies when Ephemerisand location are known) may be derived from multiple wireless signals(e.g., first, second, and third effective frequencies), which may becombined as stated above to obtain an overall effective frequency, orderived effective frequency, of the multiple signals. For GNSS signals,the derived effective frequency is an estimate of the frequency of theGNSS satellite signals, which is typically shared among the satellitesin the GNSS constellation. The combination can be based on schemes suchas a weighted average obtained by weighting and averaging the signalfrequencies such that the effective frequency derived from the strongestor several of the strongest of the received signals is/are weighted moreheavily and the effective frequency derived from the weaker signals areafforded less weight. In another embodiment, the effective frequency maybe derived from the frequency of the strongest of the received signalswhile also utilizing the frequency from each of the other receivedsignals, which are weaker. Other combination mechanisms for obtainingthe derived effective frequency of the multiple signals can include amean, a median, a geometric mean, a least squares fit, or otherpre-specified mathematical fit of the effective frequencies derived fromthe multiple wireless signals, such as, the first, second, and thirdeffective frequencies. By using Ephemeris to determine predicted Doppleroffset for each of the one or more signals (wherein multiple signals maybe combined to obtain a derived effective frequency), the respectiveDoppler shift of the signals can be corrected for to obtain eacheffective frequency prior to calculating the derived effectivefrequency. Once the Doppler of the received wireless signals isaccounted for, the derived effective frequency can be obtained, whichmay be used to estimate a frequency error, say first frequency error, ofXO 106 (a further detailed process for estimating the frequency errorfrom the effective frequency of known or zero Doppler derived from areceived wireless signal will be provided in the following sections).

XO 106 may be configured for a nominal or reference frequency, such as19.2 MHz. A first frequency error can be an offset of the effectivefrequency from the reference frequency. Therefore, using the firstfrequency error and the reference frequency, a first frequency estimateof XO 106 can be obtained. Temperature sensor 114 can supply the firsttemperature at which the first frequency estimate is obtained in thismanner from the three wireless signals. XO manager 108 can then form afirst sample comprising the first frequency estimate and the firsttemperature. The process of temperature-calibrating the XO can bestarted with this first sample comprising the first frequency and thefirst temperature.

In some examples, the process of temperature-calibration can becompleted with the first sample, (e.g., in a case where the degree n ofthe polynomial equation is low enough that one sample point cansufficiently complete the temperature-calibration process, or in a casewhere the factory precalibration or assumptions made for thecoefficients make it possible to complete the temperature-calibrationwith just one sample point). However, if for example, thetemperature-calibration is not completed with the first sample, (e.g.,not all of the coefficients of the polynomial equation have beendetermined with required or desired precision), the process can comprisefurther temperature-calibrating the XO. As described herein, “furthertemperature-calibrating” comprises proceeding with or refining thetemperature-calibration (i.e., determining the coefficients of the FTmodel) with additional sample points. Additional sample points may beobtained, for example, from a second frequency obtained using a secondset of at least one wireless signal, third frequency obtained using athird set of at least one wireless signal, etc., at respective secondtemperature, third temperature, etc. The number of samples may be basedon the number of unknown coefficients which need to be determined forthe FT model pertaining to XO 106. If the FT model is a third orderpolynomial and c₀ is a DC value of zero as previously explained, thenthree such samples may be needed to obtain the remaining unknowncoefficients c₁-c₃ (keeping in mind that c₃ may be constrained to bezero in some cases, and thereby reducing the number of samples to two).

In one embodiment, the temperature-calibration of the XO can beperformed using a single signal source of known Doppler, for example, insituations where the minimum number of signal sources 110 a-n, as above,may not be available, or where device 100 is configured to attempttemperature-calibration with a single source of known Doppler first, ifsuch a source is available. For example, when receiver 102, along withone or more components not specifically illustrated in device 100,searches for a minimum number of wireless signals from signal sources110 a-n to obtain a GNSS fix, it may be determined that this minimumnumber of signal sources is unavailable (e.g., first, second, and thirdwireless signals from first, second, and third satellites, as above, maynot be available) and device 100 may search for a signal source withknown Doppler, and if one is available, then, in this embodiment, device100 may be configured to temperature-calibrate XO 106 based on a singlesignal source of known Doppler. In other embodiments, the mobile devicemay be configured to attempt temperature-calibration with a singlesignal source of known Doppler first, and if that single signal sourceof known Doppler is not available, then attempt temperature-calibrationwith multiple sources. If receiver 102 receives a first set of wirelesssignals which comprises a first wireless signal from a first satelliteor signal source of known Doppler, the temperature-calibration may beperformed based on the first wireless signal from that signal source ofknown Doppler. In other embodiments, if an approximate location of thedevice is known, the device may default to using a single GNSS signalsource of known frequency in conjunction with satellite Ephemerisinformation and may skip a search for additional GNSS signal sources. Inanother embodiment, a terrestrial source of known frequency issufficient to temperature-calibrate the XO and a location is notrequired. As previously explained, a known frequency signal source maybe either a Doppler-true source such as a geostationary source (e.g.,SBAS or terrestrial transmitter), or a non-zero Doppler source such as aGNSS or other satellite vehicle of known position (e.g., a position thatmay be determined utilizing Ephemeris and/or extended Almanac or otherEphemeris-related source of information), when at least a coarseposition and time at device 100 is known. Accordingly, the term “knownDoppler” as used herein, can indicate a constant known value such aszero or a determinable quantity.

The process of frequency estimation of the XO will now be provided, withreference to a case where the Doppler of the received wireless signal isa constant known value or determinable quantity. It will be recalledthat once the wireless signal of known Doppler (including wirelesssignals with zero Doppler) is received, the frequency estimation processherein is similar in many aspects to the case where the effectivefrequency is determined from frequencies derived from a minimum number(e.g., three) of wireless signals, such as the first, second, and thirdwireless signals from respective first, second, and third satellites(wherein these satellites are utilized to calculate a location of thedevice and wherein the frequency estimates received from each of thesesatellites may be combined, or selected between, in order to optimizethe frequency estimate). With continuing reference to FIG. 2A, receiver102 may be configured to search for and receive signals from, say,signal source 110 a which is of known Doppler. Local oscillator 112 maybe any generic local oscillator configured to oscillate at a nominalfrequency such as a GPS L1 center frequency or a GPS L1 carrierfrequency. Similarly, for a terrestrial wireless signal from aterrestrial source or calibrated terrestrial source, local oscillator112 may be configured to oscillate at the expected nominal frequency ofthe terrestrial source, such as the standard frequency of theterrestrial wireless signal. Local oscillator 112 may be sourced from XO106, such that a variation of frequency in XO 106 is proportionallyreflected as a frequency variation in local oscillator 112. In onenumerical example, local oscillator 112 may be configured for a nominalfrequency of 1575.42 MHz, which will be recognized by the skilled personas a GPS L1 center or carrier frequency, or other known frequency.Further, as previously mentioned, XO 106 may be configured for a typicalor reference frequency of 19.2 MHz.

In one example, signal source 110 a is a Doppler-true source (e.g., ageo-stationary source, such as a SBAS satellite vehicle (SV), whereinthe Doppler of received signals at receiver 102 from the Doppler-truesource is zero). In an illustrative example, frequency variation of XO106 is initially assumed to be an unknown, say “δf” parts per million(ppm). Accordingly, the frequency variation “δF” in ppm of localoscillator 112, which is sourced from XO 106 (i.e., is a multiple of thefrequency of XO 106) will also be equal to δf ppm. Thus, frequencyvariation of local oscillator 112 can be first calculated, based onsignals obtained from the Doppler-true signal source 110 a, in order todetermine the value of δf. Once the frequency variation δf of XO 106 isknown, the frequency of XO 106 can be estimated based on frequencyvariation δf and the expected reference frequency of XO 106. In thisnumerical example, since local oscillator 112 is configured to oscillateat the expected nominal frequency of the signal source, e.g., 1575.42MHz, which corresponds to that of the Doppler-true signal (because thereis zero Doppler or variation from the nominal frequency), a comparisonof the frequency of the received signal at receiver 102 with thefrequency of local oscillator 112 can reveal the frequency uncertaintyof local oscillator 112. This is because the Doppler-true signal fromsignal source 110 is assumed to not have any frequency uncertainty ofits own, and therefore, the frequency of the Doppler-true signal can bepredicted as zero in the calculations pertaining to XOtemperature-calibration. A band pass filter, as is known in the art (notspecifically illustrated, but may be present in one of the illustratedblocks, such as, within XO manager 108), can be used to reveal thedifference, “ΔF” between the measured nominal frequency of localoscillator 112 and the predicted true Doppler (i.e., zero) of thereceived signal from signal source 110 a. In other words, ΔF providesthe frequency uncertainty or the amount the frequency of localoscillator 112 deviates from the precise nominal frequency of thereceived signal at 1575.42 MHz. This value of ΔF can then be normalizedby dividing ΔF with the nominal frequency 1575.42 MHz in order to obtainthe frequency variation of local oscillator 112 as δF ppm. As previouslydiscussed, the frequency variation δf of XO 106 and therefore, theabsolute variation Δf of XO 106 from the expected reference frequency of19.2 MHz can now be calculated. Accordingly, the frequency of XO 106 canbe estimated with a high degree of precision, as, say, the firstfrequency estimate, and associated with the first temperature, whichwill be supplied by temperature sensor 114. In this manner, a firstsample comprising the first frequency estimate and the first temperaturecan be formed, and the process of temperature-calibration ordetermination of coefficients of the FT model for XO 106 can be startedwith the first sample point. The above process can be repeated atdifferent operating temperatures to obtain further such samplescomprising frequency estimates and associated temperatures (e.g., asecond frequency estimate at a second temperature, and a third frequencyestimate at a third temperature, etc.) to further temperature-calibrateXO 106 or to determine the coefficients of the FT model for XO 106 withhigher precision.

In another example, one of the signal sources, say signal source 110 nmay be determined to be a known Doppler source, whose Doppler is anon-zero value. The Doppler of such a source can be determined orpredicted or “known” according to when its position is known. Positionof signal source 110 n can be obtained in several ways which have beenpreviously described. For example, position of a GNSS signal source canbe determined based on satellite Ephemeris, assuming that a coarselocation and GNSS time is available. The position or location of device100 may be available from a prior location fix or it may need to bedetermined, for example, through trilateration of GNSS or terrestrialsignals or through cell sector center of the serving cell. GNSS time maybe available from a terrestrial network source or may be determineddirectly from the GNSS satellite signals. With regard to location ofdevice 100, while in this embodiment, device 100 is preferablystationary for purposes of temperature-calibration using signals from asignal source 110 n of known position, it is possible to extendexemplary techniques to cases where device 100 is in motion, butposition, as well as, relative Doppler of device 100 is precisely known.For example, a GNSS fix can be utilized to determine velocity andheading of device 100 which may be used to determine a resultant orcombined Doppler due to motion of device 100 and of signal source 110 n.With regard to determining a local time at device 100, a clock on device100, such as clock 104 may need to have at least a coarse correlation toGNSS time, and/or in some cases, uncertainty in the local clock must bevery low. Moreover, in some cases, temperature-calibration of XO 106 maybe improved by imposing threshold requirements for quality of thewireless signals received from signal source 110 n. For example,embodiments may require the received signals from the GNSS satellitevehicle (SV) to satisfy a pre-specified signal to noise ratio (SNR)and/or pass pre-specified error/parity checks, in order to utilize thereceived wireless signals for XO temperature-calibration. Imposing suchrequirements or standards on the strength and accuracy of the receivedsignals can improve efficiency and accuracy in thetemperature-calibration process.

Accordingly, when the position of signal source 110 n is known (andEphemeris, in the case of satellite sources), the position of device 100is known, a coarse time at device 100 is known, and signals receivedfrom signal source 110 n meet pre-specified quality standards, theDoppler of signal source 110 can be known (i.e., predicted or determinedto high degree of accuracy). Using the known non-zero Doppler value, theprocess of temperature-calibration of XO 106 is substantially similar tothe process of temperature-calibration of XO 106 outlined above for thecase of a Doppler-true source, with only minor variations, notably, toreplace the previously used zero Doppler value with the known non-zeroDoppler value (say, ΔS) in the calculations. The remaining detailedaspects of the calculations pertaining to temperature-calibration of XO106 will not be repeated herein, for the sake of brevity.

In some cases, as an alternative to using GNSS Ephemeris, extendedterrestrial receiver assistance (EXTRA) assistance (or othertime-extended ephemeris information) may be used instead of the mostrecent GNSS Ephemeris information. For example, device 100 is in motion,EXTRA assistance, such as extended Almanac corrections, may beavailable, wherein, once receiver 102 becomes capable of tracking asignal source 110 a-n comprising a GNSS SV, a difference in measuredspeed and expected speed of device 100, can be obtained. This differencecan be translated to a bias in frequency of XO 106. For example, if thereceived signal from the GNSS SV has strong carrier to noise ratio(C/N₀), and the speed and heading (or vector speed) of device 100 can bemeasured with high confidence, the received GNSS signal can be used forobtaining an estimated frequency uncertainty (e.g., ΔF) of localoscillator 112. More specifically, the frequency estimate may be basedon a difference between a measured Doppler of the received signal fromthe GNSS SV and a predicted Doppler based on the vector speed or speedand heading of device 100 (e.g., a prediction based on an expected GPSL1 center frequency and the speed).

Accordingly, it is seen that exemplary embodiments can accomplishtemperature-calibration of XO 106 using only one signal source withknown Doppler (of zero or non-zero value). For example, some embodimentsmay perform XO temperature-calibration with a single signal source, forexample, in situations where a required minimum number of satellitesources or calibrated terrestrial sources for obtaining a GNSS fix areunavailable. Moreover, some embodiments may optionally determine (e.g.,based on a signal search) whether a calibrated terrestrial source or aplurality of GNSS satellite signals for XO temperature-calibration areunavailable, prior to selecting and performing exemplary above-describedoperations pertaining to XO temperature-calibration using only onesignal source with known Doppler.

Referring now to FIG. 2B, another exemplary device 200, for XOtemperature-calibration using received wireless signals is illustrated.More particularly, device 200 is illustrated with components and logicelements which may be used for temperature-calibration of the XO usingreceived GNSS signals (while it will be understood that this depictionis only exemplary, and does not limit alternative implementations whichmay rely on one or more of the other types of wireless signals whichhave been described herein for use in XO temperature-calibration). Asseen, device 200 is shown with several additional components or blocks,in comparison to the depiction of device 100. The function of theseadditional components will be described in an exemplary configuration ofdevice 200. In device 200, GNSS receiver 202 may be configured toreceive GNSS signal 203, for example, from a GNSS satellite vehicle(e.g., signal sources 110 a-n of FIG. 2A). GNSS receiver 202 may includea local GNSS clock generator 214 which may comprise a local oscillatorsourced from an XO in device 200 (the local oscillator and XO are notexplicitly shown in this depiction). The received GNSS signal 203 maypass through GNSS baseband processor (BP) & GPS accumulator (GACC) 204and GNSS correlation processor (CP) & GACC 206 which may be configuredto accumulate energy from searching for GNSS satellite signals, for aselected time period corresponding to a measurement duration.Measurement engine (ME) 208 can comprise measurement controller (MC)212, channel controller 216 and adder 218. Overall, ME 208 can beconfigured to compile a report of all GNSS SV measurements 209 andtransfer it to position engine (PE) 210. PE 210 may use measurements 209to compute location information for device 200. If PE 210 is successfulin calculating the location information, it may further provide clockfrequency bias 211 to measurement controller (MC) 212, which may beapplicable at a point in time corresponding to a middle of themeasurement duration. Clock frequency bias 211 may relate to a variationin clock frequency or representatively, a variation in frequency of thelocal oscillator from its expected frequency (e.g., ΔF from the aboveembodiment related to device 100). XO frequency error 219 (e.g., Δf fromabove), can be obtained from ME 208 using MC 212 and adder 218. XOfrequency at a given temperature can be calculated by ME 208 based on XOfrequency error 219 and an XO frequency estimate provided by XOfrequency estimation block 220. Also note that a communicationstransceiver, such as transceiver 440, for example, may similarly receiveterrestrial wireless signals for XO temperature-calibration, as isdiscussed relative to FIG. 4.

In more detail, GNSS receiver 202 may be configured to use XO frequencyerror 219 to apply any correction as needed to front end rotatorsconfigured in GNSS BP & GACC 204. XO frequency error 219 is passed on toXO manager 228. XO manager 228 may comprise XO field calibration block230 configured to solve the FT polynomial equation pertaining to the XOusing received values of XO frequency error 219 and associating themwith operating temperature received from XO & power managementintegrated circuit (PMIC) temperature block 234. In other embodiments,the thermistor or other temperature sensor 114 may be discrete orintegrated into other integrated circuits. As a result of solving the FTpolynomial, coefficients (e.g., c₀-c₃ as discussed above) can beobtained and stored in the block, XO coefficients 232. It will beunderstood that thermistors used in the XO & PMIC temperature block 234can pertain to one or more XOs and can comprise any other thermistorthat impact error or temperature of the XOs. Additionally, XO & PMICtemperature block 234 may be further configured to provide temperatureinformation to both XO thermal frequency estimation block 224 (locatedin XO frequency estimation block 220). In some embodiments, XOtemperature-calibration can optionally and additionally integrateassistance from calibrated terrestrial sources, although it will beunderstood that such optional assistance from calibrated terrestrialsources is not required, and exemplary embodiments are configured toperform XO temperature-calibration even in situations where suchassistance is unavailable, unviable, and/or undesired. Accordingly,total frequency estimation block 222 may take into account, an inputfrom an optional WWAN frequency assistance block 226 in someembodiments. Another input may be derived from XO thermal frequencyestimation block 224.

In this manner, exemplary embodiments may implement functionality of thevarious above-described blocks of device 200 in order totemperature-calibrate the XO using GNSS signal 203. In some embodiments,device 200, for example, with the use of ME 208, may be selective on thereceived signals which are used for XO temperature-calibration. Forexample, selection criteria may be applied to ensure quality of receivedGNSS signal 203 prior to basing frequency estimation for XOtemperature-calibration based on the received GNSS signal 203. One suchselection criterion can involve assigning a pre-specified maximumtolerable error in clock frequency based on the received GNSS signal203. For example, if the error in clock frequency based on a receivedGNSS signal 203 is above a maximum tolerable error, such as, 3 ms, thereceived GNSS signal 203 may not be used for assistance to derivefrequency estimates. Conditions may also be imposed on other aspects,such as a maximum tolerable position error, for example, as derived fromPE 210. In some embodiments, if a horizontal estimate of position error(HEPE) is greater than a predetermined threshold, such as 50 m, then, XOtemperature-calibration may not be performed under such conditions.Similar other conditions or criteria may be imposed to ensure quality ofXO temperature-calibration.

It will be appreciated that embodiments include various methods forperforming the processes, functions and/or algorithms disclosed herein.For example, as illustrated in FIG. 3A, a first embodiment can include amethod of temperature-calibrating an uncompensated crystal oscillator(“XO,” e.g., XO 106), in a mobile device (e.g. device 100) during mobiledevice operation (i.e., field calibration), the method comprising:receiving a first set of wireless signals comprising at least a firstwireless signal of known frequency, at a first temperature (e.g., one ormore wireless signals received by receiver 102 from signal source 110 a,wherein signal source 110 a may be a satellite with known frequency,such as the GPS L1 frequency, and further, in some cases, a satellitewith known Doppler, such as zero Doppler when the satellite is an SBASor geo-stationary satellite or a terrestrial source of knownfrequency)—Block 302; estimating a first frequency of the XO (e.g., bydetermining a frequency variation ΔF of local oscillator 112 sourcedfrom XO 106 as a difference in frequency between the frequency of thefirst wireless signal (i.e., GPS L1 frequency) and the frequency of thelocal oscillator F, normalizing the frequency variation of the localoscillator based on an expected nominal frequency of the localoscillator (e.g., GPS L1 frequency or a terrestrial wireless signal'scarrier frequency), determining a normalized frequency of the XO (δf) asequal to the normalized frequency of the local oscillator (δF), anddetermining the first frequency (f) based on the normalized frequency ofthe XO and an expected nominal frequency of the XO (e.g., 19.2 MHz) atthe first temperature (e.g. supplied by temperature sensor 114), basedon at least the first wireless signal—Block 304; andtemperature-calibrating the XO based on the first frequency and thefirst temperature (e.g., by starting the process of formulating the FTmodel or polynomial equation for XO 106, for example, using logic ormeans in XO manager 108, using a first sample point comprising the firstfrequency and the first temperature)—Block 306. A frequency tolerance ormaximum frequency error at a given temperature can be pre-specified forthe temperature-calibration, in order to determine whether thetemperature-calibration process is completed, or in other words, whetherfrequency error has been determined within the pre-specified tolerancefor that temperature.

Accordingly, if the temperature-calibration is complete at Block 308(i.e., if frequency error of XO 106 meets a pre-specified tolerance),then the temperature-calibration process can end in Block 310. However,if for example, the temperature-calibration is not completed at Block308 (i.e., if the frequency error of XO 106 falls outside thepre-specified tolerance), the method can comprise furthertemperature-calibrating XO 106 by repeating the methods of Blocks 302and 304, for estimating a second frequency at a second temperature basedon, for example, a second set of wireless signals comprising at leastone wireless signal of known frequency; and maybe continuing on tofurther temperature-calibrating the XO by estimating a third frequencyat a third temperature based on, for example, a third set of wirelesssignals comprising at least one wireless signal of known frequency, andso on. It will be understood that the various temperatures, i.e., thefirst, second, and third temperature above, are different from eachother, in order to achieve useful frequency-temperature samples.Moreover, the temperature-calibration can be improved if the varioustemperatures are not too close to each other, and there is a minimum gapor separation between the temperatures. The value of the minimum gap maydepend on the particular XO and desired or pre-specified tolerance infrequency error. For three samples of first, second, and thirdfrequencies at respective first, second, and third temperatures, thetemperature-calibration of the XO by the above process can be based onat least the first, second, and third frequency and corresponding first,second, and third temperatures. Moreover, it will also be understoodthat the three samples can be based on the first, second, and third setof wireless signals, wherein each set of wireless signals can compriseat least one wireless signal from one satellite (e.g., an SBAS orDoppler-true satellite source, see FIG. 3C) or one terrestrial source,or three or more wireless signals from three or more satellites (seeFIG. 3B). For an exemplary third order polynomial equation with threeunknown coefficients (e.g., c₀=0), at least three such samples may beneeded in some cases, while keeping in mind that fewer or greatersamples may be required based on the order or degree of the polynomialfunction, data available from precalibration, assumptions made based onoperating conditions or specifications of the XO obtained from thevendor, etc. Once the relationship (e.g., polynomial relationship, orany other relationship, without departing from the scope of thisdisclosure), between frequency and temperature has been expressed interms of the polynomial equation, i.e., once XO 106 has beentemperature-calibrated, a fourth frequency can be determined from thepolynomial equation at any given temperature (e.g., a fourthtemperature).

With reference now to FIG. 3B, an embodiment similar to FIG. 3A isdepicted, wherein temperature-calibration of the XO is based on wirelesssignals received from three or more satellites. It will be recalled thatwireless signals from three satellites may be sufficient to calculatelocation of the device (e.g., device 100 comprising XO 106) if altitudeof the device is known, but if altitude is unknown, then wirelesssignals from at least four satellites may be needed. Once location isdetermined based on the wireless signals, using Ephemeris and time, thefrequency of the wireless signals can be determined. Sometimes it may bepossible to determine the frequency of all of the received wirelesssignals, but sometimes it may only be possible to determine thefrequency of less than all of the received wireless signals (e.g., onlyone wireless signal in some cases). In any case, once the location isdetermined, not all of the wireless signals may be required for thepurposes of estimating the frequency of the XO at a given temperature.For example, once the location is determined, only the effectivefrequency derived from the strongest signal may be used as the derivedeffective frequency of all the received wireless signals. In otherexamples, effective frequencies derived from the multiple signals may becombined, using schemes such as weighting signals such that effectivefrequency derived from the one or more of the strongest of the receivedsignals is weighted more heavily and the effective frequencies derivedfrom the weaker signals are afforded less weight. Other combinationmechanisms such as a mean, median, least squares fit, etc. may also beused. Accordingly, if more than one such frequency (or effectivefrequency, when Ephemeris and location are known) is obtained, themultiple frequencies (or effective frequencies) may be combined by anysuitable manner. By using Ephemeris to determine predicted Doppleroffset for each of the multiple signals being combined, the respectiveDoppler shift can be offset from the respective effective frequencies orfrom the derived effective frequency. Once the Doppler of the receivedwireless signals is accounted for, the effective frequency can bederived, which may correspond to the GPS L1 frequency or other nominalfrequency of the received wireless signals. The effective frequency (orderived effective frequency) is compared to the frequency of a localoscillator (e.g., local oscillator 112 in receiver 102 of device 100,which has been set to the nominal frequency). The comparison can beperformed using a band pass filter, and the frequency deviation “ΔF” ofthe local oscillator from the nominal frequency can be obtained, usingthe frequency variation δf of the XO, and the estimated frequency of theXO at the given temperature can be obtained. More particularly, theabove process is depicted in FIG. 3B as a method oftemperature-calibrating an uncompensated crystal oscillator (“XO,” e.g.,XO 106), in a mobile device (e.g., device 100) during mobile deviceoperation (i.e. field calibration), the method comprising: receiving afirst set of wireless signals comprising at least a first wirelesssignal from a first satellite, a second wireless signal from a secondsatellite, and a third wireless signal from a third satellite, at afirst temperature—Block 312; estimating a first frequency of the XO atthe first temperature, based on at least the first, second, and thethird wireless signals (e.g., by combining the wireless signals asdescribed above to obtain an effective frequency, or when Ephemeris andlocation are known, deriving an effective frequency of the satelliteconstellation from a single satellite signal, and thereby deriving afirst frequency error of the XO to obtain the first frequency)—Block314; and temperature-calibrating the XO based on the first frequency andthe first temperature (e.g., by starting the process of formulating theFT model or polynomial equation for XO 106, for example, using logic ormeans in XO manager 108, using a first sample point comprising the firstfrequency and the first temperature)—Block 316.

With reference to FIG. 3C, yet another embodiment similar to that ofFIG. 3A is depicted, wherein temperature-calibration of the XO is basedon wireless signals received from a single signal source. In the casewhere the single signal source is a satellite source (e.g., SBASvehicle), the device comprising the XO (e.g., device 100 comprising XO106) may obtain a location or position estimate for the device from, forexample, using an approximate location derived from terrestrial signals(e.g. using cell sector center of the serving cell or trilateratingterrestrial signals), or location derived from a positioning server.Once the location is known, using Ephemeris and time, the receivedwireless signal can be used to determine the effective frequency forcomparison with the frequency of the local oscillator, in order toobtain the frequency estimate for the XO, as described in the case ofFIG. 3B above. In cases where the signal source is not a satellitesource (e.g. if the signal source is a WWAN or other fixed frequencysource of known frequency), and if the device is stationary, then theknown fixed frequency is treated as the effective frequency which iscompared with the frequency of the local oscillator in order to obtainthe frequency estimate for the XO. More particularly, the above processis depicted in FIG. 3C as a method of temperature-calibrating anuncompensated crystal oscillator (“XO,” e.g., XO 106), in a mobiledevice (e.g., device 100) during mobile device operation (i.e., fieldcalibration), the method comprising: receiving a first set of wirelesssignals comprising at least a first wireless signal of known Doppler(e.g., from a signal source such as a SBAS satellite or geostationarysource of zero-Doppler, or a known Doppler source or a terrestrialsignal source), at a first temperature—Block 322; estimating a firstfrequency of the XO at the first temperature, based on the firstwireless signal (e.g., by determining the location of device 100 basedon the processes described above, based on whether the signal source isa satellite source or a terrestrial source, and once the location isknown, using Ephemeris and time, the received wireless signal can beused to determine the effective frequency for comparison with thefrequency of the local oscillator, in order to obtain the frequencyestimate for the XO)—Block 324; and temperature-calibrating the XO basedon the first frequency and the first temperature (e.g., by starting theprocess of formulating the FT model or polynomial equation for XO 106,for example, using logic or means in XO manager 108, using a firstsample point comprising the first frequency and the firsttemperature)—Block 326. Also note, in embodiments that utilize aterrestrial signal source of known frequency, Ephemeris, time andlocation are not required.

Those of skill in the art will appreciate that information and signalsmay be represented using any of a variety of different technologies andtechniques. For example, data, instructions, commands, information,signals, bits, symbols, and chips that may be referenced throughout theabove description may be represented by voltages, currents,electromagnetic waves, magnetic fields or particles, optical fields orparticles, or any combination thereof.

Further, those of skill in the art will appreciate that the variousillustrative logical blocks, modules, circuits, and algorithm stepsdescribed in connection with the embodiments disclosed herein may beimplemented as electronic hardware, computer software, or combinationsof both. To clearly illustrate this interchangeability of hardware andsoftware, various illustrative components, blocks, modules, circuits,and steps have been described above generally in terms of theirfunctionality. Whether such functionality is implemented as hardware orsoftware depends upon the particular application and design constraintsimposed on the overall system. Skilled artisans may implement thedescribed functionality in varying ways for each particular application,but such implementation decisions should not be interpreted as causing adeparture from the scope of the present invention.

The methods, sequences and/or algorithms described in connection withthe embodiments disclosed herein may be embodied directly in hardware,in a software module executed by a processor, or in a combination of thetwo. A software module may reside in RAM memory, flash memory, ROMmemory, EPROM memory, EEPROM memory, registers, hard disk, a removabledisk, a CD-ROM, or any other form of storage medium known in the art. Anexemplary storage medium is coupled to the processor such that theprocessor can read information from, and write information to, thestorage medium. In the alternative, the storage medium may be integralto the processor.

With reference now to FIG. 4, another exemplary device 400, forGNSS-based XO temperature-calibration is illustrated. As seen, device400 is shown with several additional components or blocks, in comparisonto the depiction of device 100 in FIG. 2A. In some embodiments, device400 is implemented as a wireless communication system. Device 400includes digital signal processor (DSP) 464 and a general purposeprocessor, depicted as processor 465. The above-described functions andmethods related to XO temperature-calibration can be performed in DSP464 or processor 465 or any combination of the processing elementsthereof. Accordingly, in some embodiments, processor 465 may beconfigured to perform operations described with regard to XO manager108, but it will be understood that some of the operations related to XOtemperature-calibration can be performed in DSP 464, and moreover, theseoperations can be implemented in any suitable combination of hardwareand software. Both DSP 464 and processor 465 may be coupled to clock 104driven by XO 106 as previously described and to memory 432. Instructionsrelated to related to a coder/decoder (CODEC) (e.g., an audio and/orvoice CODEC) can be stored in memory 432. Speaker 436 and microphone 438can be coupled to audio controller 434, which can be coupled toprocessor 465 and/or to DSP 464. Display controller 426 can be coupledto DSP 464, processor 465, and to display 428. Other components, such astransceiver 440 (which may be part of a modem) and receiver 441 are alsoillustrated.

Transceiver 440 can be coupled to wireless antenna 442, which may beconfigured to receive wireless communication signals from a terrestrialsource such as WWAN or CDMA. These signals can be used to receivewireless signals from a terrestrial signal source of known frequency tobe used in XO temperature-calibration. Receiver 441 can be coupled to asatellite or GNSS antenna 443, which may be configured to receivewireless signals such as satellite signals from a satellite or GNSSsatellite, which, in embodiments utilizing GNSS satellite signals mayalso require knowledge of Ephemeris, time and location to be used in XOtemperature-calibration. In some embodiments, both receiver 441 andtransceiver 440 may include respective local oscillators 112 and 113,which may be sourced from XO 106. Temperature sensor 114 is alsoillustrated, and may be coupled to clock 104 and processor 465. Eitherlocal oscillator 112 or 113 may be used for XO temperature-calibration,depending on whether a GNSS satellite signal source, or other satellitesignal source, or a terrestrial signal source is utilized. Localoscillator 112 would be used for XO temperature-calibration when one ormore satellite signal source are utilized for XOtemperature-calibration. Local oscillator 113 would be used for XOtemperature-calibration if a terrestrial source of known frequency isutilized for XO temperature calibration. Additionally, band pass filter(BPF) 467 is also illustrated as a functional block with processor 465,but it will be understood that placement of BPF 467 in device 400 is notrestricted, and thus functionality of BPF 467 according to exemplaryembodiments, can be implemented anywhere within device 400. Exemplaryfunctionality of BPF 467 can include logic/means for comparing afrequency of local oscillator 112 and/or 113 with a frequency of asignal received from receiver 441 and/or transceiver 440 respectivelyand logic/means for determining a frequency variation of localoscillator 112/113 based on the comparison. In a particular embodiment,DSP 464, processor 465, display controller 426, memory 432, audiocontroller 434, transceiver 440, receiver 441, clock 104, andtemperature sensor 114 are included in a system-in-package orsystem-on-chip device 422.

In a particular embodiment, input device 430 and power supply 444 arecoupled to the system-on-chip device 422. Moreover, in a particularembodiment, as illustrated in FIG. 4, display 428, input device 430,speaker 436, microphone 438, wireless antenna 442, GNSS antenna 443, andpower supply 444 are external to the system-on-chip device 422. However,each of display 428, input device 430, speaker 436, microphone 438,wireless antenna 442, GNSS antenna 443, and power supply 444 can becoupled to a component of the system-on-chip device 422, such as aninterface or a controller.

In one embodiment, one or both of DSP 464 and processor 465, inconjunction with one or more remaining components illustrated in FIG. 4,can include logic/means to perform the method of temperature-calibratingan uncompensated XO (e.g., XO 106) in device 400 during operation ofdevice 400 (i.e., field calibration) as discussed, for example in Blocks302-310 of FIG. 3A (or similarly, with regard to Blocks 312-316 of FIG.3B or Blocks 322-326 of FIG. 3C). For example, one or more oftransceiver 440, wireless antenna 442, receiver 441 and GNSS antenna 443can include logic/means for receiving a first set of wireless signalscomprising at least a first wireless signal of known frequency (e.g.,from a first satellite), and similarly, logic/means for furtherreceiving at least second and third wireless signals of knownfrequencies. DSP 464 and/or processor 465 (illustrated as comprising XOmanager 108) in conjunction with input from temperature sensor 114, caninclude logic/means for estimating a first frequency of the XO at afirst temperature, based on at least the first wireless signal, andtemperature-calibrating the XO based on the first frequency at the firsttemperature. DSP 464 and/or processor 465 can similarly, furthercomprise logic/means for estimating a second frequency at a secondtemperature, based on a second set of wireless signals comprising atleast one wireless signal of known frequency, estimating a thirdfrequency at a third temperature, based on a third set of wirelesssignals comprising at least one wireless signal of known frequency, andfurther temperature-calibrating the XO based at least on the first,second, and third frequency and corresponding first, second, and thirdtemperature. DSP 464 and/or processor 465 may be configured to estimatethe first frequency of the XO at the first temperature based on aneffective frequency of the first, second, and third wireless signals,wherein the frequencies of the first, second, and third wireless signalsare offset by a first, second, and third Doppler relative to theeffective frequency and derive a first frequency error of the XO basedon the effective frequency. As previously described, the band passfilter BPF 467 may be configured to determine a frequency variation oflocal oscillator 112/113 as a difference in frequency between theeffective frequency and a frequency of the local oscillator and theprocessor is further configured to normalize the frequency variation ofthe local oscillator based on an expected nominal frequency of the localoscillator, determine a normalized frequency variation of XO 106 asequal to the normalized frequency variation of the local oscillator112/113, and determine the first frequency based on the normalizedfrequency variation of XO 106 and an expected nominal frequency of XO106. It will be recalled that the effective frequency can be, forexample, equal to the strongest one of the first, second, and thirdwireless signals, or can be based on a combination of the first, second,and third wireless signals, wherein the combination is one of a weightedaverage, a mean, a median, a least squares, or a pre-specifiedmathematical fit of the first, second, and third wireless signals.

In some cases, the signal source can be a signal source of knownDoppler, such as a geostationary source or a SBAS vehicle of zeroDoppler or a terrestrial source of known frequency such as a wirelessbase station. At most one such signal source of known Doppler may beavailable in some cases, where a plurality of satellite signal sources,or calibrated terrestrial sources, are unavailable. In such cases, DSP464 and/or processor 465 may be further configured to determine whetherthe wireless signal received from such signal sources satisfies apre-specified signal to noise ratio (SNR) and/or passes a pre-specifiederror or parity check. If device 400 is in motion, and a satellitesignal is relied upon, DSP 464 and/or processor 465 may be furtherconfigured to estimate the first frequency of XO 106 at the firsttemperature, based on a difference between a measured Doppler of thesatellite signal and a predicted Doppler of the satellite signal basedon a speed of motion of the mobile device. Temperature-calibration of XO106 can comprise a relationship between frequency of the XO andtemperature, based on at least the first frequency and the firsttemperature, wherein the relationship is a polynomial equation (e.g., ofthird order) of the frequency of the XO and temperature with a number(e.g., four) of unknown coefficients based on an order of the polynomialequation. DSP 464 and/or processor 465 may be able to performtemperature-calibration of XO 106 using a reduced number of unknowncoefficients, wherein the reduced number can be based on constraintsand/or assumptions, such as obtained from vendor specifications of XO106, precalibration of XO 106 during manufacture or in the factory,and/or constraining variation in temperature.

Moreover, one or more of transceiver 440, wireless antenna 442, receiver441 and GNSS antenna 443 can also be configured to receive GNSSassistance information such as location of device 400, GNSS Ephemerisand/or Almanac information. DSP 464 and/or processor 465 can also beconfigured to determine the location of device 400, for example, fromthe above GNSS assistance or based on a terrestrial signal or signals(e.g. using cell sector center of the serving cell or the location of awireless transceiver sending signals received by the device 400 or bytrilaterating terrestrial and/or GNSS signals) and/or by using apositioning server.

It should be noted that although FIG. 4 depicts a wirelesscommunications device, DSP 464, processor 465, and memory 432 may alsobe integrated into a set-top box, a music player, a video player, anentertainment unit, a navigation device, a communications device, apersonal digital assistant (PDA), a fixed location data unit, or acomputer. Moreover, such a device may also be integrated in asemiconductor die.

Accordingly, an embodiment of the invention can include a computerreadable media embodying a temperature-calibrating an uncompensatedcrystal oscillator (XO), in a mobile device during mobile deviceoperation (i.e., field calibration). Accordingly, the invention is notlimited to illustrated examples and any means for performing thefunctionality described herein are included in embodiments of theinvention.

While the foregoing disclosure shows illustrative embodiments of theinvention, it should be noted that various changes and modificationscould be made herein without departing from the scope of the inventionas defined by the appended claims. The functions, steps and/or actionsof the method claims in accordance with the embodiments of the inventiondescribed herein need not be performed in any particular order.Furthermore, although elements of the invention may be described orclaimed in the singular, the plural is contemplated unless limitation tothe singular is explicitly stated.

What is claimed is:
 1. A method of temperature-calibrating anuncompensated crystal oscillator (XO), in a mobile device during mobiledevice operation, the method comprising: receiving a first set ofwireless signals comprising at least a first wireless signal of knownfrequency, at a first temperature; estimating a first frequency of theXO at the first temperature, based on at least the first wirelesssignal; and temperature-calibrating the XO based on the first frequencyand the first temperature.
 2. The method of claim 1, wherein theuncompensated XO comprises a lack of built-in compensation for frequencyvariation of the XO with variation in temperature or voltage.
 3. Themethod of claim 1, wherein the first wireless signal is transmitted by afirst satellite.
 4. The method of claim 3, wherein the first satellitecomprises a global navigation satellite systems (GNSS) satellite.
 5. Themethod of claim 4, further comprising receiving GNSS assistanceinformation.
 6. The method of claim 5, wherein the GNSS assistanceinformation further comprises a location of the mobile device.
 7. Themethod of claim 5, wherein the GNSS assistance information comprisesGNSS Ephemeris information.
 8. The method of claim 5, wherein the GNSSassistance information comprises Almanac information.
 9. The method ofclaim 5, further comprising determining a location of the mobile device.10. The method of claim 9, wherein determining the location is based onat least one terrestrial signal.
 11. The method of claim 9, whereindetermining the location is based on GNSS signals.
 12. The method ofclaim 9, wherein the first set of wireless signals further comprises atleast a second wireless signal transmitted by a second satellite and athird wireless signal transmitted by a third satellite.
 13. The methodof claim 12, wherein estimating the first frequency of the XO at thefirst temperature is further based on at least the second and thirdwireless signals.
 14. The method of claim 13, wherein estimating thefirst frequency of the XO at the first temperature comprises obtainingthe location based on at least the first, second, and the third wirelesssignals.
 15. The method of claim 13, wherein estimating the firstfrequency of the XO at the first temperature comprises: obtaining aneffective frequency of the first, second, and third wireless signals,wherein the frequencies of the first, second, and third wireless signalsare offset by a first, second, and third Doppler relative to theeffective frequency; and deriving a first frequency error of the XObased on the effective frequency.
 16. The method of claim 12, wherein,estimating the first frequency of the XO at the first temperaturecomprises: deriving a first effective frequency from the first wirelesssignal, a second effective frequency from the second wireless signal,and a third effective frequency from the third wireless signal;determining a derived effective frequency based on one or more of thefirst, second, and third effective frequencies; determining a frequencyvariation of a local oscillator on the mobile device, as a difference infrequency between the derived effective frequency and a frequency of thelocal oscillator, wherein the local oscillator is sourced from the XO;normalizing the frequency variation of the local oscillator based on anexpected nominal frequency of the local oscillator; determining anormalized frequency variation of the XO as equal to the normalizedfrequency variation of the local oscillator; and determining the firstfrequency based on the normalized frequency variation of the XO and anexpected nominal frequency of the XO.
 17. The method of claim 16,wherein the derived effective frequency is based on the strongest of thefirst, second, and third effective frequencies.
 18. The method of claim16, wherein the derived effective frequency is based on a combination ofthe first, second, and third effective frequencies.
 19. The method ofclaim 18, wherein the combination is one of a weighted average, a mean,a median, a least squares, or a pre-specified mathematical fit of thefirst, second, and third effective frequencies.
 20. The method of claim3, wherein a Doppler of the first wireless signal transmitted by thefirst satellite is constant.
 21. The method of claim 20, wherein thefirst satellite is geostationary and the Doppler of the first wirelesssignal is zero.
 22. The method of claim 20, wherein the first satellitecomprises a satellite-based augmentation system (SBAS) satellite. 23.The method of claim 20, further comprising determining whether the firstwireless signal satisfies a pre-specified signal to noise ratio (SNR).24. The method of claim 20, further comprising determining whether thefirst wireless signal passes a pre-specified error or parity check. 25.The method of claim 3, wherein the mobile device is in motion, andwherein estimating the first frequency of the XO at the firsttemperature, based on at least the first wireless signal furthercomprises estimating a difference between a measured Doppler of thefirst wireless signal and a predicted Doppler of the first wirelesssignal based on a speed of motion of the mobile device.
 26. The methodof claim 1, wherein temperature-calibrating the XO comprises determininga relationship between frequency of the XO and temperature, based on atleast the first frequency and the first temperature.
 27. The method ofclaim 26, wherein the relationship is a polynomial equation of thefrequency of the XO and temperature with a number of unknowncoefficients based on an order of the polynomial equation.
 28. Themethod of claim 27 comprising reducing the number of unknowncoefficients based on specifications of the XO.
 29. The method of claim27 comprising reducing the number of unknown coefficients based onprecalibration of the XO during manufacturing of the XO.
 30. The methodof claim 27 comprising reducing the number of unknown coefficients basedon constraining a variation in temperature.
 31. The method of claim 1,further comprising: receiving a second set of wireless signalscomprising at least one wireless signal of known frequency at a secondtemperature; estimating a second frequency of the XO at the secondtemperature, based on the second set of wireless signals, wherein thesecond temperature is different from the first temperature; and furthertemperature-calibrating the XO based on the second frequency and thesecond temperature.
 32. The method of claim 31, wherein furthertemperature-calibrating the XO comprises determining a relationshipbetween frequency of the XO and temperature, based on at least the firstfrequency and the first temperature and on the second frequency and thesecond temperature.
 33. The method of claim 31, further comprisingreceiving a third set of wireless signals comprising at least onewireless signal of known frequency at a third temperature; estimating athird frequency of the XO at the third temperature, based on the thirdset of wireless signals, wherein the third temperature is different fromthe first temperature and the second temperature; and furthertemperature-calibrating the XO based on the third frequency and thethird temperature.
 34. The method of claim 33, wherein furthertemperature-calibrating the XO comprises determining a relationshipbetween frequency of the XO and temperature, based on at least the firstfrequency and the first temperature, the second frequency and the secondtemperature, and the third frequency and the third temperature.
 35. Amethod of temperature-calibrating an uncompensated crystal oscillator(XO) in a mobile device during mobile device operation, the methodcomprising: receiving a first set of wireless signals comprising atleast a first wireless signal, from a signal source of known frequencyand known Doppler, at a first temperature, wherein a plurality ofsatellite signals is unavailable; estimating a first frequency of the XOat the first temperature, based on at least the first wireless signal;and temperature-calibrating the XO based on the first frequency and thefirst temperature.
 36. The method of claim 35, wherein the signal sourceis a satellite.
 37. The method of claim 36, wherein the satellite isgeo-stationary with zero Doppler.
 38. The method of claim 37, whereinthe satellite is a satellite based augmentation system (SBAS) satellite.39. The method of claim 36, further comprising obtaining a location ofthe mobile device from an approximate location using cell sector centerof a serving cell, from a trilateration of terrestrial signals, from apositioning server, or from a base station Almanac on the mobile device.40. The method of claim 39, further comprising determining an effectivefrequency of the first wireless signal based on Ephemeris and time atthe mobile device.
 41. The method of claim 40, wherein, estimating thefirst frequency of the XO at the first temperature comprises:determining a frequency variation of a local oscillator on the mobiledevice, as a difference in frequency between the effective frequency anda frequency of the local oscillator, wherein the local oscillator issourced from the XO; normalizing the frequency variation of the localoscillator based on an expected nominal frequency of the localoscillator; determining a normalized frequency variation of the XO asequal to the normalized frequency variation of the local oscillator; anddetermining the first frequency based on the normalized frequencyvariation of the XO and an expected nominal frequency of the XO.
 42. Themethod of claim 36, further comprising determining whether the firstwireless signal satisfies a pre-specified signal to noise ratio (SNR).43. The method of claim 36, further comprising determining whether thefirst wireless signal passes a pre-specified error or parity check. 44.The method of claim 35, comprising receiving the first set of wirelesssignals from a calibrated terrestrial source.
 45. The method of claim44, wherein the calibrated terrestrial source is one of a wireless widearea network (WWAN), code division multiple access (CDMA) network, orlong term evolution (LTE) network.
 46. A system comprising: a mobiledevice comprising an uncompensated crystal oscillator (XO); means forreceiving a first set of wireless signals comprising at least a firstwireless signal of known frequency, at a first temperature; means forestimating a first frequency of the XO at the first temperature, basedon at least the first wireless signal; and means fortemperature-calibrating the XO based on the first frequency and thefirst temperature during operation of the mobile device.
 47. The systemof claim 46, wherein the uncompensated XO comprises a lack of built-incompensation for frequency variation of the XO with variation intemperature or voltage.
 48. The system of claim 46, wherein the firstwireless signal is transmitted by a first satellite.
 49. The system ofclaim 48, wherein the first satellite comprises a GNSS satellite. 50.The system of claim 49, further comprising means for receiving GNSSassistance information.
 51. The system of claim 50, wherein the GNSSassistance information further comprises a location of the mobiledevice.
 52. The system of claim 50, wherein the GNSS assistanceinformation comprises GNSS Ephemeris information.
 53. The system ofclaim 50, wherein the GNSS assistance information comprises Almanacinformation.
 54. The system of claim 50, further comprising means fordetermining a location of the mobile device.
 55. The system of claim 54,wherein the means determining the location utilizes at least oneterrestrial signal.
 56. The system of claim 54, wherein the means fordetermining the location utilizes GNSS signals.
 57. The system of claim54, wherein the first set of wireless signals further comprises at leasta second wireless signal transmitted by a second satellite and a thirdwireless signal transmitted by a third satellite.
 58. The system ofclaim 57, wherein the means for estimating the first frequency of the XOat the first temperature is further based on at least the second andthird wireless signals.
 59. The system of claim 58, wherein the meansfor estimating the first frequency of the XO at the first temperaturecomprises means for obtaining the location based on at least the first,second, and the third wireless signals.
 60. The system of claim 58,wherein the means for estimating the first frequency of the XO at thefirst temperature comprises: means for obtaining an effective frequencyof the first, second, and third wireless signals, wherein thefrequencies of the first, second, and third wireless signals are offsetby a first, second, and third Doppler relative to the effectivefrequency; and means for deriving a first frequency error of the XObased on the effective frequency.
 61. The system of claim 57, wherein,the means for estimating the first frequency of the XO at the firsttemperature comprises: means for deriving a first effective frequencyfrom the first wireless signal, a second effective frequency from thesecond wireless signal, and a third effective frequency from the thirdwireless signal; determining a derived effective frequency based on oneor more of the first, second, and third effective frequencies; means fordetermining a frequency variation of a local oscillator on the mobiledevice, as a difference in frequency between the derived effectivefrequency and a frequency of the local oscillator, wherein the localoscillator is sourced from the XO; means for normalizing the frequencyvariation of the local oscillator based on an expected nominal frequencyof the local oscillator; means for determining a normalized frequencyvariation of the XO as equal to the normalized frequency variation ofthe local oscillator; and means for determining the first frequencybased on the normalized frequency variation of the XO and an expectednominal frequency of the XO.
 62. The system of claim 61, wherein thederived effective frequency is based on the strongest of the first,second, and third effective frequencies.
 63. The system of claim 61,wherein the derived effective frequency is based on a combination of thefirst, second, and third effective frequencies.
 64. The system of claim63, wherein the combination is one of a weighted average, a mean, amedian, a least squares, or a pre-specified mathematical fit of thefirst, second, and third effective frequencies.
 65. The system of claim48, wherein a Doppler of the first wireless signal transmitted by thefirst satellite is constant.
 66. The system of claim 65, wherein thefirst satellite is geostationary and the Doppler of the first wirelesssignal is zero.
 67. The system of claim 65, wherein the first satellitecomprises a satellite-based augmentation system (SBAS) satellite. 68.The system of claim 65, further comprising means for determining whetherthe first wireless signal satisfies a pre-specified signal to noiseratio (SNR).
 69. The system of claim 65, further comprising means fordetermining whether the first wireless signal passes a pre-specifiederror or parity check.
 70. The system of claim 48, wherein the mobiledevice is in motion, and wherein the means for estimating the firstfrequency of the XO at the first temperature, based on at least thefirst wireless signal further comprises means for estimating adifference between a measured Doppler of the first wireless signal and apredicted Doppler of the first wireless signal based on a speed ofmotion of the mobile device.
 71. The system of claim 46, wherein themeans for temperature-calibrating the XO comprises means for determininga relationship between frequency of the XO and temperature, based on atleast the first frequency and the first temperature.
 72. The system ofclaim 71, wherein the relationship is a polynomial equation of thefrequency of the XO and temperature with a number of unknowncoefficients based on an order of the polynomial equation.
 73. Thesystem of claim 72 comprising means for reducing the number of unknowncoefficients based on specifications of the XO.
 74. The system of claim72 comprising means for reducing the number of unknown coefficientsbased on precalibration of the XO during manufacturing of the XO. 75.The system of claim 72 comprising means for reducing the number ofunknown coefficients based on constraining a variation in temperature.76. The system of claim 46, further comprising: means for receiving asecond set of wireless signals comprising at least one wireless signalof known frequency at a second temperature; means for estimating asecond frequency of the XO at the second temperature, based on thesecond set of wireless signals, wherein the second temperature isdifferent from the first temperature; and means for furthertemperature-calibrating the XO based on the second frequency and thesecond temperature.
 77. The system of claim 76, wherein the means forfurther temperature-calibrating the XO comprises means for determining arelationship between frequency of the XO and temperature, based on atleast the first frequency and the first temperature and on the secondfrequency and the second temperature.
 78. The system of claim 76,further comprising means for receiving a third set of wireless signalscomprising at least one wireless signal of known frequency at a thirdtemperature; means for estimating a third frequency of the XO at thethird temperature, based on the third set of wireless signals, whereinthe third temperature is different from the first temperature and thesecond temperature; and means for further temperature-calibrating the XObased on the third frequency and the third temperature.
 79. The systemof claim 78, wherein the means for further temperature-calibrating theXO comprises means for determining a relationship between frequency ofthe XO and temperature, based on at least the first frequency and thefirst temperature, the second frequency and the second temperature, andthe third frequency and the third temperature.
 80. A system comprising:a mobile device comprising an uncompensated crystal oscillator (XO);means for receiving a first set of wireless signals comprising at leasta first wireless signal, from a signal source of known frequency andknown Doppler, at a first temperature, wherein a plurality of satellitesignals is unavailable; means for estimating a first frequency of the XOat the first temperature, based on at least the first wireless signal;and means for temperature-calibrating the XO based on the firstfrequency and the first temperature during operation of the mobiledevice.
 81. The system of claim 80, wherein the signal source is asatellite.
 82. The system of claim 81, wherein the satellite isgeo-stationary with zero Doppler.
 83. The system of claim 82, whereinthe satellite is a satellite based augmentation system (SBAS) satellite.84. The system of claim 81, further comprising means for obtaining alocation of the mobile device from an approximate location using cellsector center of a serving cell, from a trilateration of terrestrialsignals, from a positioning server, or from a base station Almanac onthe device.
 85. The system of claim 84, further comprising means fordetermining an effective frequency of the first wireless signal based onEphemeris and time at the mobile device.
 86. The system of claim 85,wherein, the means for estimating the first frequency of the XO at thefirst temperature comprises: means for determining a frequency variationof a local oscillator on the mobile device, as a difference in frequencybetween the effective frequency and a frequency of the local oscillator,wherein the local oscillator is sourced from the XO; means fornormalizing the frequency variation of the local oscillator based on anexpected nominal frequency of the local oscillator; means fordetermining a normalized frequency variation of the XO as equal to thenormalized frequency variation of the local oscillator; and means fordetermining the first frequency based on the normalized frequencyvariation of the XO and an expected nominal frequency of the XO.
 87. Thesystem of claim 81, further comprising means for determining whether thefirst wireless signal satisfies a pre-specified signal to noise ratio(SNR).
 88. The system of claim 81, further comprising means fordetermining whether the first wireless signal passes a pre-specifiederror or parity check.
 89. The system of claim 80, comprising means forreceiving the first set of wireless signals from a calibratedterrestrial source.
 90. The system of claim 89, wherein the calibratedterrestrial source is one of a wireless wide area network (WWAN), codedivision multiple access (CDMA) network, or long term evolution (LTE)network.
 91. A mobile device comprising: an uncompensated crystaloscillator (XO); a temperature sensor configured to provide a firsttemperature; one or more receivers configured to receive a first set ofwireless signals comprising at least a first wireless signal of knownfrequency, at the first temperature; and a processor configured toestimate a first frequency of the XO at the first temperature, based onat least the first wireless signal, and temperature-calibrate the XObased on the first frequency and the first temperature during operationof the mobile device.
 92. The mobile device of claim 91, wherein theuncompensated XO comprises a lack of built-in compensation for frequencyvariation of the XO with variation in temperature or voltage.
 93. Themobile device of claim 91, wherein the first wireless signal istransmitted by a first satellite.
 94. The mobile device of claim 93,wherein the first satellite comprises a GNSS satellite.
 95. The mobiledevice of claim 94, wherein at least one of the receivers is furtherconfigured to receive GNSS assistance information.
 96. The mobile deviceof claim 95, wherein the GNSS assistance information further comprises alocation of the mobile device.
 97. The mobile device of claim 95,wherein the GNSS assistance information comprises GNSS Ephemerisinformation.
 98. The mobile device of claim 95, wherein the GNSSassistance information comprises Almanac information.
 99. The mobiledevice of claim 5, wherein the processor is further configured todetermine a location of the mobile device.
 100. The mobile device ofclaim 99, wherein the processor is configured to determine the locationbased on at least one terrestrial signal.
 101. The mobile device ofclaim 99, wherein the processor is configured to determine the locationbased on GNSS signals.
 102. The mobile device of claim 99, wherein thefirst set of wireless signals further comprises at least a secondwireless signal transmitted by a second satellite and a third wirelesssignal transmitted by a third satellite.
 103. The mobile device of claim102, wherein the processor is further configured to estimate the firstfrequency of the XO at the first temperature based on at least thesecond and third wireless signals.
 104. The mobile device of claim 103,wherein the processor is configured to estimate the first frequency ofthe XO at the first temperature based on a location of the mobile devicedetermined from at least the first, second, and the third wirelesssignals.
 105. The mobile device of claim 103, wherein the processor isconfigured to: estimate the first frequency of the XO at the firsttemperature based on an effective frequency of the first, second, andthird wireless signals, wherein the frequencies of the first, second,and third wireless signals are offset by a first, second, and thirdDoppler relative to the effective frequency; and derive a firstfrequency error of the XO based on the effective frequency.
 106. Themobile device of claim 102, further comprising at least one localoscillator sourced from the XO, wherein the processor is configured toderive a first effective frequency from the first wireless signal, asecond effective frequency from the second wireless signal, and a thirdeffective frequency from the third wireless signal, and a derivedeffective frequency based on one or more of the first, second, and thirdeffective frequencies; a band pass filter configured to determine afrequency variation of the at least one local oscillator as a differencein frequency between the derived effective frequency and a frequency ofthe local oscillator; and the processor is further configured tonormalize the frequency variation of the local oscillator based on anexpected nominal frequency of the local oscillator, determine anormalized frequency variation of the XO as equal to the normalizedfrequency variation of the local oscillator, and determine the firstfrequency based on the normalized frequency variation of the XO and anexpected nominal frequency of the XO.
 107. The mobile device of claim106, wherein the derived effective frequency is based on the strongestof the first, second, and third effective frequencies.
 108. The mobiledevice of claim 106, wherein the derived effective frequency is based ona combination of the first, second, and third effective frequencies.109. The mobile device of claim 108, wherein the combination is one of aweighted average, a mean, a median, a least squares, or a pre-specifiedmathematical fit of the first, second, and third effective frequencies.110. The mobile device of claim 93, wherein a Doppler of the firstwireless signal transmitted by the first satellite is constant.
 111. Themobile device of claim 110, wherein the first satellite is geostationaryand the Doppler of the first wireless signal is zero.
 112. The mobiledevice of claim 110, wherein the first satellite comprises asatellite-based augmentation system (SBAS) satellite.
 113. The mobiledevice of claim 10, wherein the processor is further configured todetermine whether the first wireless signal satisfies a pre-specifiedsignal to noise ratio (SNR).
 114. The mobile device of claim 110,wherein the processor is further configured to determine whether thefirst wireless signal passes a pre-specified error or parity check. 115.The mobile device of claim 93, wherein the mobile device is in motion,and wherein the processor is configured to estimate the first frequencyof the XO at the first temperature, based on a difference between ameasured Doppler of the first wireless signal and a predicted Doppler ofthe first wireless signal based on a speed of motion of the mobiledevice.
 116. The mobile device of claim 91, wherein thetemperature-calibration of the XO comprises a relationship betweenfrequency of the XO and temperature, based on at least the firstfrequency and the first temperature.
 117. The mobile device of claim116, wherein the relationship is a polynomial equation of the frequencyof the XO and temperature with a number of unknown coefficients based onan order of the polynomial equation.
 118. The mobile device of claim117, wherein the processor is further configured totemperature-calibrate the XO using a reduced number of unknowncoefficients, wherein the reduced number of unknown coefficients isbased on specifications of the XO.
 119. The mobile device of claim 118,wherein the reduced number of unknown coefficients is based onprecalibration of the XO during manufacture of the XO.
 120. The mobiledevice of claim 118, wherein the reduced number of unknown coefficientsis based on constraints in variation of temperature.
 121. The mobiledevice of claim 91, wherein, the one or more receivers are furtherconfigured to receive a second set of wireless signals comprising atleast one wireless signal of known frequency at a second temperature;the temperature sensor is configured to provide a second temperature,wherein the second temperature is different from the first temperature;and the processor is further configured to estimate a second frequencyof the XO at the second temperature, based on the second set of wirelesssignals and further temperature-calibrate the XO based on the secondfrequency and the second temperature.
 122. The mobile device of claim121, wherein the further temperature-calibration of the XO comprises arelationship between frequency of the XO and temperature, based on atleast the first frequency and the first temperature and on the secondfrequency and the second temperature.
 123. The mobile device of claim121, wherein the one or more receivers are further configured to receivea third set of wireless signals comprising at least one wireless signalof known frequency at a third temperature; the temperature sensor isconfigured to provide a third temperature, wherein the third temperatureis different from the first temperature and the second temperature; andthe processor is further configured to estimate a third frequency of theXO at the third temperature, based on the third set of wireless signalsand further temperature-calibrate the XO based on the third frequencyand the third temperature.
 124. The mobile device of claim 123, whereinthe further temperature-calibration of the XO comprises a relationshipbetween frequency of the XO and temperature, based on at least the firstfrequency and the first temperature, the second frequency and the secondtemperature, and the third frequency and the third temperature.
 125. Amobile device comprising: an uncompensated crystal oscillator (XO); atemperature configured to provide a first temperature; one or morereceivers configured to receive a first set of wireless signalscomprising at least a first wireless signal, from a signal source ofknown frequency and known Doppler, at the first temperature, wherein aplurality of satellite signals is unavailable; and a processorconfigured to estimate a first frequency of the XO at the firsttemperature, based on at least the first wireless signal andtemperature-calibrate the XO based on the first frequency and the firsttemperature.
 126. The mobile device of claim 125, wherein the signalsource is a satellite.
 127. The mobile device of claim 126, wherein thesatellite is geo-stationary with zero Doppler.
 128. The mobile device ofclaim 127, wherein the satellite is a satellite based augmentationsystem (SBAS) satellite.
 129. The mobile device of claim 126, whereinthe processor is further configured to obtain a location of the mobiledevice from an approximate location using cell sector center of aserving cell, from a trilateration of terrestrial signals, from apositioning server, or from a base station Almanac on the mobile device.130. The mobile device of claim 129, wherein the processor is furtherconfigured to determine an effective frequency of the first wirelesssignal based on Ephemeris and time at the mobile device.
 131. The mobiledevice of claim 130, further comprising a local oscillator sourced fromthe XO and a band pass filter configured to determine a frequencyvariation of the local oscillator as a difference in frequency betweenthe effective frequency and a frequency of the local oscillator, andwherein the processor is further configured to normalize the frequencyvariation of the local oscillator based on an expected nominal frequencyof the local oscillator, determine a normalized frequency variation ofthe XO as equal to the normalized frequency variation of the localoscillator, and determine the first frequency based on the normalizedfrequency variation of the XO and an expected nominal frequency of theXO.
 132. The mobile device of claim 126, wherein the processor isfurther configured to determine whether the first wireless signalsatisfies a pre-specified signal to noise ratio (SNR).
 133. The mobiledevice of claim 126, wherein the processor is further configured todetermine whether the first wireless signal passes a pre-specified erroror parity check.
 134. The mobile device of claim 125, wherein the one ormore receivers are configured to receive the first set of wirelesssignals from a calibrated terrestrial source.
 135. The mobile device ofclaim 134, wherein the calibrated terrestrial source is one of awireless wide area network (WWAN), code division multiple access (CDMA)network, or long term evolution (LTE) network.
 136. A mobile devicecomprising: an uncompensated crystal oscillator (XO); a temperaturesensor configured to provide a first temperature; one or more receiversconfigured to receive a first set of wireless signals comprising atleast a first wireless signal of known frequency, at a firsttemperature; a processor; and a non-transitory computer-readable storagemedium comprising code, which, when executed by the processor, causesthe processor to perform operations for temperature-calibrating acrystal oscillator (XO), the non-transitory computer-readable storagemedium comprising: code for estimating a first frequency of the XO atthe first temperature, based on at least the first wireless signal; codefor determining unknown coefficients of a polynomial equation comprisinga relationship between frequency of the XO and temperature based on atleast the first frequency and the first temperature.